﻿using PAP.Domain.Core.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PAP.Domain.Core.Repositories
{
    public interface IRepository<TKey,TEntity>
        where TEntity : Entity<TKey>
    {
        TEntity Load(TKey id);
        void Add(TEntity entity);
        void Add(IEnumerable<TEntity> entities);
        void Delete(TEntity entity);
        void Delete(IEnumerable<TEntity> entities);
        void Update(TEntity entity);
        void Update(IEnumerable<TEntity> entities);
    }
}
